/**
 * DEPENDENCIAS:
 * nenhuma
 * 
 * FUNCIONALIDADE:
 * Funcoes utils genericas 
 */

/*
 funcao que calcula a diferenca em dias de datas
 */
function diferencaDias(data1, data2){
	var dif = Date.UTC(data1.getYear(),data1.getMonth(),data1.getDate(),0,0,0) - Date.UTC(data2.getYear(),data2.getMonth(),data2.getDate(),0,0,0);
	return Math.abs((dif / 1000 / 60 / 60 / 24));
}

/*
 override da funcao replaceAll para que se comporte como a
 funcionalidade do Java String.replaceAll
 */
String.prototype.replaceAll = function(de, para){
	var str = this;
	var pos = str.indexOf(de);
	while (pos > -1){
		str = str.replace(de, para);
		pos = str.indexOf(de);
	}
	return (str); 
};

/*
 funcao que procura um determinado id em meio a uma colecao
 */
function findDataId(idProcurado, data){
	for(var i=0; i<data.length; i++){
		if(data[i].id==idProcurado){
			return data[i];
		}
	}
}

function float2moeda(num) {

	   x = 0;

	   if(num<0) {
	      num = Math.abs(num);
	      x = 1;
	   }
	   if(isNaN(num)) num = "0";
	      cents = Math.floor((num*100+0.5)%100);

	   num = Math.floor((num*100+0.5)/100).toString();

	   if(cents < 10) cents = "0" + cents;
	      for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	         num = num.substring(0,num.length-(4*i+3))+'.'
	               +num.substring(num.length-(4*i+3));
	      	 ret = num + ',' + cents;
	      if (x == 1) ret = ' - ' + ret;
	   return ret;
}

function moeda2float(moeda){

   moeda = moeda.replace(".","");

   moeda = moeda.replace(",",".");

   return parseFloat(moeda);

}
